/*     */ package com.kendoui.taglib;
/*     */ 
/*     */ import com.kendoui.taglib.html.Div;
/*     */ import com.kendoui.taglib.html.Element;
/*     */ import com.kendoui.taglib.html.Img;
/*     */ import com.kendoui.taglib.html.Li;
/*     */ import com.kendoui.taglib.html.Span;
/*     */ import com.kendoui.taglib.html.Text;
/*     */ import com.kendoui.taglib.html.Ul;
/*     */ import java.io.IOException;
/*     */ import java.util.ArrayList;
/*     */ import java.util.List;
/*     */ import java.util.Map;
/*     */ import javax.servlet.jsp.JspException;
/*     */ import javax.servlet.jsp.PageContext;
/*     */ 
/*     */ public abstract class BaseItemTag extends BaseTag
/*     */ {
/*     */   protected List<Map<String, Object>> items;
/*     */ 
/*     */   protected abstract String getText();
/*     */ 
/*     */   protected abstract String getSpriteCssClass();
/*     */ 
/*     */   protected abstract String getImageUrl();
/*     */ 
/*     */   protected abstract boolean getExpanded();
/*     */ 
/*     */   protected abstract boolean getEnabled();
/*     */ 
/*     */   public void initialize()
/*     */   {
/*  31 */     this.items = new ArrayList();
/*  32 */     super.initialize();
/*     */   }
/*     */ 
/*     */   public void destroy()
/*     */   {
/*  37 */     this.items = null;
/*  38 */     super.destroy();
/*     */   }
/*     */ 
/*     */   protected void renderContents(Element<?> element) {
/*  42 */     String spriteCssClass = getSpriteCssClass();
/*     */ 
/*  44 */     if ((spriteCssClass != null) && (spriteCssClass.trim().length() > 0)) {
/*  45 */       Span sprite = new Span();
/*  46 */       sprite.attr("class", "k-sprite " + spriteCssClass);
/*  47 */       element.append(sprite);
/*     */     }
/*     */ 
/*  50 */     String imageUrl = getImageUrl();
/*     */ 
/*  52 */     if ((imageUrl != null) && (imageUrl.trim().length() > 0)) {
/*  53 */       Img image = new Img();
/*  54 */       image.attr("class", "k-image");
/*  55 */       image.attr("alt", "");
/*  56 */       image.attr("src", imageUrl);
/*  57 */       element.append(image);
/*     */     }
/*     */ 
/*  60 */     element.append(new Text(getText()));
/*     */ 
/*  62 */     String html = body();
/*     */ 
/*  64 */     if (!html.isEmpty())
/*  65 */       appendContent(element, html);
/*     */   }
/*     */ 
/*     */   public void addAttributes(Li element)
/*     */   {
/*  70 */     if ((isSet("expanded")) && (getExpanded())) {
/*  71 */       element.attr("data-expanded", "true");
/*     */     }
/*     */ 
/*  74 */     if ((isSet("enabled")) && (!getEnabled()))
/*  75 */       element.attr("disabled", "disabled");
/*     */   }
/*     */ 
/*     */   public int doEndTag()
/*     */     throws JspException
/*     */   {
/*  81 */     Li element = new Li();
/*     */ 
/*  83 */     addAttributes(element);
/*     */ 
/*  85 */     renderContents(element);
/*     */     try
/*     */     {
/*  88 */       element.write(this.pageContext.getOut());
/*     */     } catch (IOException exception) {
/*  90 */       throw new JspException(exception);
/*     */     }
/*     */ 
/*  93 */     return super.doEndTag();
/*     */   }
/*     */ 
/*     */   protected void appendContent(Element<?> element, String html)
/*     */   {
/*     */     Element contentElement;
/*  99 */     if (this.items.size() > 0)
/* 100 */       contentElement = new Ul();
/*     */     else {
/* 102 */       contentElement = new Div();
/*     */     }
/*     */ 
/* 105 */     contentElement.html(html);
/*     */ 
/* 107 */     element.append(contentElement);
/*     */   }
/*     */ }

/* Location:           D:\Liao\kendoui.jsp.2013.1.319.trial\wrappers\jsp\kendo-taglib\kendo-taglib-2013.1.319.jar
 * Qualified Name:     com.kendoui.taglib.BaseItemTag
 * JD-Core Version:    0.6.2
 */